(VAR X XS) (STRATEGY CONTEXTSENSITIVE (0) (s 1) (nil) (cons 1) (nats) (pairs) (odds) (incr 1) (head 1) (tail 1) ) (RULES nats -> cons(0,incr(nats)) pairs -> cons(0,incr(odds)) odds -> incr(pairs) incr(cons(X,XS)) -> cons(s(X),incr(XS)) head(cons(X,XS)) -> X tail(cons(X,XS)) -> XS )